// JS = ES + DOM + BOM
// ES module (ESM => ES6的新特性)

// CommonJS module (CommonJS 标准的模块化)
// 例如： require（） 函数就是CommonJS模块化的导入



// CommonJS 规范的 require 语法‌ 引用 demo1.js 的导出内容
// //(1)
// const a = require("./demo1.mjs")
// console.log(a)
// console.log(a.name)
// console.log(a.age)

// console.log("\n")

// //(2)
// const {name,age} = require("./demo1.mjs")
// console.log(name)
// console.log(age)

//ES6导入方式
// Node.js 对 ES6 模块化（import/export）的不支持，默认是CommonJS module
// import { userName,userAge } from "./demo1.mjs"
// console.log(userName)
// console.log(userAge)

// 在node环境里使用ES6：
//    1.方式一‌：使用 .mjs 后缀文件名（如 module.mjs），Node.js 会将其识别为 ES6 模块。
//    2.‌方式二‌：在项目的 package.json 中设置 "type": "module"，此时所有 .js 文件默认按 ES6 模块解析
//             （若需使用 CommonJS，文件需改为 .cjs 后缀）


//解构默认导出对象
// import person from "./demo1.mjs" //不能在导入的时候结构，但是可以在下面变量结构
// let {age} = person
// console.log(age)

//默认导出效果
// import person from "./demo1.mjs"
// console.log("默认导出的person对象: \n",person,"\n")
// console.log("person对象里面的stu对象：\n",person.stu,"\n")
// console.log("stu对象里面的sum函数计算1+3结果：\n",person.stu.sum(1,3)


























